import request from '@/config/axios'

// 合同文件关联 VO
export interface ContractFileRelationVO {
  id: number // 主键ID
  contractId: number // 关联的合同ID
  fileCategory: string // 文件类别(合同正本/合同附件/补充协议/验收报告等)
  fileName: string // 文件名称
  fileFormat: string // 文件格式(pdf/doc/xls等)
  fileSize: number // 文件大小(字节)
  uploadTime: Date // 上传时间
  previewUrl: string // 在线预览URL
  downloadUrl: string // 下载URL
  fileHash: string // 文件哈希值(SHA256)
  fileRemark: string // 文件备注说明
}

// 合同文件关联 API
export const ContractFileRelationApi = {
  // 查询合同文件关联分页
  getContractFileRelationPage: async (params: any) => {
    return await request.get({ url: `/erp/contract-file-relation/page`, params })
  },

  // 查询合同文件关联详情
  getContractFileRelation: async (id: number) => {
    return await request.get({ url: `/erp/contract-file-relation/get?id=` + id })
  },

  // 新增合同文件关联
  createContractFileRelation: async (data: ContractFileRelationVO) => {
    return await request.post({ url: `/erp/contract-file-relation/create`, data })
  },

  // 修改合同文件关联
  updateContractFileRelation: async (data: ContractFileRelationVO) => {
    return await request.put({ url: `/erp/contract-file-relation/update`, data })
  },

  // 删除合同文件关联
  deleteContractFileRelation: async (id: number) => {
    return await request.delete({ url: `/erp/contract-file-relation/delete?id=` + id })
  },

  // 导出合同文件关联 Excel
  exportContractFileRelation: async (params) => {
    return await request.download({ url: `/erp/contract-file-relation/export-excel`, params })
  }
}
